<?xml version="1.0"?>
<doc>
    <assembly>
        <name>FreeFlow.Client</name>
    </assembly>
    <members>
        <member name="T:FreeFlow.Client.Action">
            <summary>
            An action available at a folder stage or from the blank forms list.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Action.Type">
            <summary>
            Gets the type of the action.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Action.Name">
            <summary>
            Gets the name of the action.
            </summary>
        </member>
        <member name="T:FreeFlow.AlertHelper">
            <summary>
            Helper class for alerts.
            </summary>
        </member>
        <member name="M:FreeFlow.AlertHelper.AlertTypeString(FreeFlow.AlertType)">
            <summary>
            Gets the string used in the database to denote the specified alert type.
            </summary>
            <param name="alertType">Type of alert.</param>
            <returns>The string used in the database to denote the specified alert type</returns>
        </member>
        <member name="M:FreeFlow.AlertHelper.AlertTypeFromString(System.String)">
            <summary>
            Gets the type of an alert from the string used to represent it in the database.
            </summary>
            <param name="alertTypeString">The alert type string.</param>
        </member>
        <member name="T:FreeFlow.Client.DateTimeType">
            <summary>Type of a date-time field.</summary>
        </member>
        <member name="F:FreeFlow.Client.DateTimeType.Date">
            <summary>Date only.</summary>
        </member>
        <member name="F:FreeFlow.Client.DateTimeType.Time">
            <summary>Time only.</summary>
        </member>
        <member name="F:FreeFlow.Client.DateTimeType.DateTime">
            <summary>Date and time.</summary>
        </member>
        <member name="T:FreeFlow.Client.DateTimeField">
            <summary>A date-time field.</summary>
        </member>
        <member name="T:FreeFlow.Client.Field">
            <summary>
            A field on a form.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Connectable">
            <summary>
            Base abstract class for anything that needs to connect to the engine
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Connectable.CheckConnection">
            <summary>
            Checks the connection is valid and logged in.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connectable.Connection">
            <summary>
            Gets or sets the connection.
            </summary>
        </member>
        <member name="F:FreeFlow.Client.Field.ColourAttribute">
            <summary>Name of the colour attribute</summary>
        </member>
        <member name="M:FreeFlow.Client.Field.GetValidationMessage">
            <summary>
            Gets the validation message.
            </summary>
            <returns>Returns null if the field has no validation errors, an error message otherwise.</returns>
        </member>
        <member name="M:FreeFlow.Client.Field.ParseColor(System.String)">
            <summary>
            Converts a color string returned from the engine to a .NET Color.
            </summary>
            <param name="color">Color string from engine.</param>
        </member>
        <member name="M:FreeFlow.Client.Field.ParseFont(System.Xml.XmlElement)">
            <summary>
            Parses the specified font XML node.
            </summary>
            <param name="fontNode">Font node.</param>
        </member>
        <member name="M:FreeFlow.Client.Field.ParseFontColor(System.Xml.XmlElement)">
            <summary>
            Parses the color of the font.
            </summary>
            <param name="fontNode">Font node.</param>
        </member>
        <member name="M:FreeFlow.Client.Field.ParseAlign(System.String)">
            <summary>
            Parses an alignment attribute.
            </summary>
            <param name="align">Align.</param>
        </member>
        <member name="P:FreeFlow.Client.Field.Height">
            <summary>
            Gets the height of the field in pixels.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Width">
            <summary>
            Gets the width of the field in pixels.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Top">
            <summary>
            Gets the top of the field in pixels.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Left">
            <summary>
            Gets the left of the field in pixels.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Name">
            <summary>
            Gets the name of the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Value">
            <summary>
            Gets or sets the value of the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Hint">
            <summary>
            Gets the hint for the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.Usage">
            <summary>
            Gets the usage of this field (only applicable in actions).
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.AutoRefill">
            <summary>
            Gets a value indicating whether altering this field will cause a refill.
            </summary>
            <value>
            	<c>true</c> if altering this field will cause a refill; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:FreeFlow.Client.Field.Form">
            <summary>
            Gets the form that owns this field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.VisibilityScript">
            <summary>
            Gets the JScript script that is evaluated to decide if this field should be shown.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.ClientExtensions">
            <summary>
            Gets the client extensions for this field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Field.ClientScriptEvents">
            <summary>
            Gets the client script events for this field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.DateTimeField.GetValidationMessage">
            <summary>
            Gets the validation message.
            </summary>
            <returns>Returns null if the field has no validation errors, an error message otherwise.</returns>
        </member>
        <member name="P:FreeFlow.Client.DateTimeField.DateTimeType">
            <summary>
            Gets the date time type of the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.DateTimeField.DateTime">
            <summary>
            Gets or sets the value of the field in DateTime format.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.DateTimeField.Earliest">
            <summary>
            Gets the earliest valid date-fime for this field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.DateTimeField.Latest">
            <summary>
            Gets the latest valid date-fime for this field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.CurrencyField">
            <summary>
            A currency field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ClientScriptEventName">
            <summary>Names of client script events.</summary>
        </member>
        <member name="F:FreeFlow.Client.ClientScriptEventName.OnClick">
            <summary>The name of click events for buttons.</summary>
        </member>
        <member name="T:FreeFlow.Client.ClientScriptEvent">
            <summary>
            A client-side script call attached to a field event.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ClientScriptEvent.#ctor(System.Xml.XmlElement)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.ClientScriptEvent"/> instance.
            </summary>
            <param name="eventElement">The XML element for this client script event</param>
        </member>
        <member name="P:FreeFlow.Client.ClientScriptEvent.EventName">
            <summary>
            Gets the name of the event for this client script call.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ClientScriptEvent.Language">
            <summary>
            Gets the language of the client script call.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ClientScriptEvent.ScriptCall">
            <summary>
            Gets the script that will be called.
            </summary>
        </member>
        <member name="T:FreeFlow.IGetAttachment">
            <summary>
            Interface used to get images for image fields
            </summary>
        </member>
        <member name="M:FreeFlow.IGetAttachment.GetAttachment(FreeFlow.AttachmentType,System.String,System.String)">
            <summary>
            Gets the specified attachment.
            </summary>
            <param name="type">The attachment type.</param>
            <param name="file">The file name.</param>
            <param name="owner">The owner of the attachment.</param>
            <returns></returns>
        </member>
        <member name="T:FreeFlow.Client.List">
            <summary>
            Abstract base class for any list based data
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Refreshable">
            <summary>
            Base abstract class for anything that needs to be refreshed 
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Refreshable.RefreshItems">
            <summary>
            Refreshes the items in the class. Must be overridden in any inherited classes
            </summary>
        </member>
        <member name="F:FreeFlow.Client.List.ListDataTableName">
            <summary>
            The name of the DataTable that contains list data.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.List.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.List"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.List.ListType">
            <summary>
            Abstract method to return the list type used in requests to the engine.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.List.RequestData">
            <summary>
            Returns any request data required for the engine request for this list.
            </summary>
            <returns></returns>
        </member>
        <member name="M:FreeFlow.Client.List.RefreshItems">
            <summary>
            Refreshes the items in the list.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.ListDataTable">
            <summary>
            Gets the DataTable containing the list.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.Data">
            <summary>
            Gets the list data returned from the engine.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.Filter">
            <summary>
            Gets or sets a SQL WHERE clause that will be used to filter the list data.
            For an alerts list, the filter will be applied to the eAlert table.
            For a blank forms list, the filter will be applied to the eStart table. 
            An example filter is 
            <code>
            [C#]
            list.Filter = "eMapName = 'My process'";
            </code>
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.Order">
            <summary>
            Gets or sets a SQL ORDER BY clause that will be used to sort the list data.
            An example order clause to get the latest alerts first for an alerts list is 
            <code>
            [C#]
            list.Order = "eUpdated DESC";
            </code>
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.PageSize">
            <summary>
            Gets or sets the number of list items to return in the list response.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.Page">
            <summary>
            Gets or sets the page to be returned. Numbering starts from 1.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.List.RecordCount">
            <summary>
            After a call to <see cref="M:FreeFlow.Client.List.RefreshItems"/>, this will get the total number of records available. 
            If paging is being used, this may not equal the number of returned items in the list. 
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Events.OpenFolderEventArgs">
            <summary>
            Event arguments for the open folder event.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Events.OpenFolderEventArgs.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Events.OpenFolderEventArgs"/> instance.
            </summary>
            <param name="folderId">Folder id.</param>
        </member>
        <member name="P:FreeFlow.Client.Events.OpenFolderEventArgs.FolderId">
            <summary>
            Gets the folder id.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.CheckField">
            <summary>
            A checkbox field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.CheckField.Caption">
            <summary>
            Gets the caption of the button.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.AlertsList">
            <summary>A list containing alerts</summary>
            <example>
            This shows how to populate an ASP.NET DataGrid from an AlertsList object. 
            Connection is an already connected <see cref="T:FreeFlow.Client.Connection"/> object.
            Populating a WinForms DataGrid is very similar but without a call to DataBind. 
            <code language="c#">
            AlertsList alertsList = new AlertsList();
            alertsList.Connection = Connection;
            alertsList.AlertListType = AlertType.ToDo;
            alertsList.RefreshItems();
            dataGrid.DataSource = alertsList.ListDataTable;
            dataGrid.DataBind();
            </code>
            </example>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.ProcessColumn">
            <summary>The column that contains the process name of the alert.</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.SubjectColumn">
            <summary>The column that contains the alert subject</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.UpdatedColumn">
            <summary>The column that contains the alert's updated time</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.DeadlineColumn">
            <summary>The column that contains the alert's deadline</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.FolderIdColumn">
            <summary>The column that contains the folder ID of the alert.</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.FolderNameColumn">
            <summary>The column that contains the folder name of the alert.</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.StageColumn">
            <summary>The column that contains the stage name of the alert.</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.AlertMessageColumn">
            <summary>The column that contains the message for the alert.</summary>
        </member>
        <member name="F:FreeFlow.Client.AlertsList.PriorityColumn">
            <summary>The column that contains the priority of the alert.</summary>
        </member>
        <member name="M:FreeFlow.Client.AlertsList.RequestData">
            <summary>
            Returns the where clause for the engine request for this alert list
            </summary>
        </member>
        <member name="M:FreeFlow.Client.AlertsList.ListType">
            <summary>Returns the type of the list needed when caling the engine</summary>
        </member>
        <member name="P:FreeFlow.Client.AlertsList.AlertListType">
            <summary>
            Gets or sets the alert list type.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ActionPage">
            <summary>A folder in an action.</summary>
            <example>
            How to start a blank form, set some values and submit the form.
            conn is an already logged-in <see cref="T:FreeFlow.Client.Connection"/> object
            <code language="c#">
            FreeFlow.Client.ActionPage page = new FreeFlow.Client.ActionPage();
            page.Connection = conn;
            page.StartBlankForm("Map1", "Action1");
            page.Form.Field("Text1").Value = "Hello world";
            page.Validate();
            page.Submit();
            </code>
            <code language="vb">
            Dim page As New FreeFlow.Client.ActionPage
            page.Connection = conn
            page.StartBlankForm("Map1", "Action1")
            page.Form.Field("Text1").Value = "Hello world"
            page.Validate()
            page.Submit()
            </code>
            </example>
        </member>
        <member name="T:FreeFlow.Client.IFolder">
            <summary>
            Interface for any folder based class.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.IFolder.FolderId">
            <summary>
            Gets the folder id.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.ActionPage"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.StartBlankForm(System.String,System.String)">
            <summary>Starts a blank form. This method can only be used with user actions.</summary>
            <param name="processName">Name of the process.</param>
            <param name="actionName">Name of the action.</param>
            <example>
            How to start a blank form, set some values and submit the form.
            conn is an already logged-in <see cref="T:FreeFlow.Client.Connection"/> object
            <code language="c#">
            FreeFlow.Client.ActionPage page = new FreeFlow.Client.ActionPage();
            page.Connection = conn;
            page.StartBlankForm("Map1", "Action1");
            page.Form.Field("Text1").Value = "Hello world";
            page.Validate();
            page.Submit();
            </code>
            <code language="vb">
            Dim page As New FreeFlow.Client.ActionPage
            page.Connection = conn
            page.StartBlankForm("Map1", "Action1")
            page.Form.Field("Text1").Value = "Hello world"
            page.Validate()
            page.Submit()
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.StartBlankForm(System.String)">
            <summary>Starts a blank form. If the process contains multiple blank forms, 
            the one whose eAction.eActionID equals 1 will be started.</summary>
            <param name="processName">Name of the process.</param>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.StartAction(System.String,System.String)">
            <summary>
            Starts an action.
            </summary>
            <param name="folderId">Folder id.</param>
            <param name="actionName">Name of the action.</param>
            <example>
            How to start an action, set some values and submit the form.
            conn is an already logged-in <see cref="T:FreeFlow.Client.Connection"/> object
            <code language="c#">
            FreeFlow.Client.ActionPage page = new FreeFlow.Client.ActionPage();
            page.Connection = conn;
            page.StartAction("folder id", "Action1");
            page.Form.Field("Text1").Value = "Hello world";
            page.Validate();
            page.Submit();
            </code>
            <code language="vb">
            Dim page As New FreeFlow.Client.ActionPage
            page.Connection = conn
            page.StartAction("folder id", "Action1")
            page.Form.Field("Text1").Value = "Hello world"
            page.Validate()
            page.Submit()
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.FillFromResponse(System.Xml.XmlDocument)">
            <summary>
            Fills the page from an action response.
            </summary>
            <param name="response">engine response.</param>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.Submit">
            <summary>Submits the action. Note, for non-confirm actions this method will not do anything since starting the action also submits it.</summary>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.Submit(System.String@,System.String@)">
            <summary>Submits the action. Note, for non-confirm actions this method will not do anything since starting the action also submits it.</summary>
            <param name="chainedAction">The name of the next chained action, if there is one.</param>
            <param name="reopenFolderId">Indicates the folder ID to be reopened, if there is one.</param>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.Cancel">
            <summary>
            Cancels the action.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.Validate">
            <summary>
            Ensures fields in the form are valid in terms of minimum value, maximum value, maximum length etc.
            It is advisable to call this before <see cref="M:FreeFlow.Client.ActionPage.Submit"/>. 
            If any fields fail to validate a <see cref="T:FreeFlow.FreeFlowException"/> will be thrown.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ActionPage.Refill(System.String)">
            <summary>Refills the page from the engine.</summary>
            <param name="fieldUpdated">The name of the field that caused the refill to occur.</param>
        </member>
        <member name="P:FreeFlow.Client.ActionPage.Form">
            <summary>Gets the form used for this action.</summary>
        </member>
        <member name="P:FreeFlow.Client.ActionPage.FolderId">
            <summary>
            Gets the folder Id.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ActionPage.Confirm">
            <summary>
            Gets a value indicating whether this <see cref="T:FreeFlow.Client.ActionPage"/> is a confirm action.
            </summary>
            <value>
            	<c>true</c> if a confirm action; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:FreeFlow.Client.ActionPage.FolderName">
            <summary>
            Gets the name of the folder.
            </summary>
        </member>
        <member name="T:FreeFlow.AttachmentType">
            <summary>Type of an attachment.</summary>
        </member>
        <member name="F:FreeFlow.AttachmentType.Folder">
            <summary>Folder attachment.</summary>
        </member>
        <member name="F:FreeFlow.AttachmentType.Service">
            <summary>Service attachment.</summary>
        </member>
        <member name="F:FreeFlow.AttachmentType.Map">
            <summary>Map attachment.</summary>
        </member>
        <member name="F:FreeFlow.AttachmentType.Procedure">
            <summary>Procedure attachment.</summary>
        </member>
        <member name="T:FreeFlow.UserActionType">
            <summary>The type of a user action, indicating whether a form will be used or a confirm dialog should be shown.</summary>
        </member>
        <member name="F:FreeFlow.UserActionType.Form">
            <summary>Form-based action.</summary>
        </member>
        <member name="F:FreeFlow.UserActionType.Confirm">
            <summary>Confirm action, show a confirmation dialog before committing the action.</summary>
        </member>
        <member name="F:FreeFlow.UserActionType.NonConfirm">
            <summary>Non-confirm action, commit the action immediately.</summary>
        </member>
        <member name="T:FreeFlow.Constants">
            <summary>
            Constants used by FreeFlow.
            </summary>
        </member>
        <member name="F:FreeFlow.Constants.FreeFlowVersion">
            <summary>The current version of FreeFlow</summary>
        </member>
        <member name="F:FreeFlow.Constants.FreeFlowCategory">
            <summary>The category for FreeFlow properties</summary>
        </member>
        <member name="F:FreeFlow.Constants.FreeFlowCopyright">
            <summary>The copyright text for FreeFlow</summary>
        </member>
        <member name="F:FreeFlow.Constants.NullDateTime">
            <summary>The engine's null date-time</summary>
        </member>
        <member name="T:FreeFlow.Client.ImageField">
            <summary>
            An image field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ImageField.File">
            <summary>
            Gets the file name of the image.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ImageField.Image">
            <summary>
            Gets the image binary data.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.SignatureField">
            <summary>
            A signature field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Orientation">
            <summary>Radio group orientation.</summary>
        </member>
        <member name="F:FreeFlow.Client.Orientation.Vertical">
            <summary>Vertical orientation.</summary>
        </member>
        <member name="F:FreeFlow.Client.Orientation.Horizontal">
            <summary>Horizontal orientation.</summary>
        </member>
        <member name="T:FreeFlow.Client.RadioGroupField">
            <summary>A radio group field.</summary>
        </member>
        <member name="M:FreeFlow.Client.RadioGroupField.Option(System.Int32)">
            <summary>
            Gets the option at the specified index.
            </summary>
            <param name="index">Index.</param>
            <returns></returns>
        </member>
        <member name="P:FreeFlow.Client.RadioGroupField.Caption">
            <summary>
            Gets the caption of the radiogroup.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.RadioGroupField.Orientation">
            <summary>
            Gets the orientation of the radio group.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.RadioGroupField.OptionCount">
            <summary>
            Gets the number of options in the radiogroup.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Align">
            <summary>Alignment of text in a label or text field.</summary>
        </member>
        <member name="F:FreeFlow.Client.Align.Left">
            <summary>Aligned to left.</summary>
        </member>
        <member name="F:FreeFlow.Client.Align.Right">
            <summary>Aligned to right.</summary>
        </member>
        <member name="F:FreeFlow.Client.Align.Center">
            <summary>Center aligned.</summary>
        </member>
        <member name="T:FreeFlow.Client.UdpXmlDebugger">
            <summary>
            Debugger for XML.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.UdpXmlDebugger.WriteLine(System.String)">
            <summary>
            Writes a debug message to the debugger, implements the TraceListener abstract method.
            </summary>
            <param name="message">The message to write to the debugger.</param>
        </member>
        <member name="M:FreeFlow.Client.UdpXmlDebugger.Write(System.String)">
            <summary>
            Writes a debug message to the debugger, implements the TraceListener abstract method.
            </summary>
            <param name="message">The message to write to the debugger.</param>
        </member>
        <member name="M:FreeFlow.Client.UdpXmlDebugger.SendMessage(System.String)">
            <summary>
            Writes a debug message to the debugger
            </summary>
            <param name="message">The message to send to the debugger.</param>
        </member>
        <member name="T:FreeFlow.Client.RuleStyle">
            <summary>Rule border style.</summary>
        </member>
        <member name="F:FreeFlow.Client.RuleStyle.Lowered">
            <summary>Lowered border.</summary>
        </member>
        <member name="F:FreeFlow.Client.RuleStyle.Raised">
            <summary>Raised border.</summary>
        </member>
        <member name="F:FreeFlow.Client.RuleStyle.Flat">
            <summary>No border.</summary>
        </member>
        <member name="T:FreeFlow.Client.RuleField">
            <summary>A rule field.</summary>
        </member>
        <member name="P:FreeFlow.Client.RuleField.Color">
            <summary>
            Gets the color of the rule.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.RuleField.Style">
            <summary>
            Gets the rule's border style.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ConnectionType">
            <summary>The type of connection to the engine.</summary>
        </member>
        <member name="F:FreeFlow.Client.ConnectionType.DCOM">
            <summary>DCOM will be used (only recommended for internal network use).</summary>
        </member>
        <member name="F:FreeFlow.Client.ConnectionType.HTTP">
            <summary>HTTP will be used.</summary>
        </member>
        <member name="T:FreeFlow.Client.RaiseFlagBy">
            <summary>Defines how flags will be raised against the engine</summary>
        </member>
        <member name="F:FreeFlow.Client.RaiseFlagBy.TransactionProtocol">
            <summary>Flags will be raised via the engine's XML interface</summary>
        </member>
        <member name="F:FreeFlow.Client.RaiseFlagBy.DCOM">
            <summary>
            Flags will be raised via the engine's DCOM interface. 
            Raising flags through the engine's DCOM interface does not support passing a username and password.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Connection">
            <summary>
            Class used to connect to the engine. All communication with the engine is through this class. 
            Configuration is via the <see cref="P:FreeFlow.Client.Connection.ConnectionType"/>, <see cref="P:FreeFlow.Client.Connection.Engine"/> and <see cref="P:FreeFlow.Client.Connection.HttpServer"/> properties. 
            If HTTP is used, a HTTP connection is used to connect to the web server and then DCOM/COM is used to connect to the engine.
            If a more configurable setup is required then contact the author.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Connection.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Connection"/> instance where an existing session ID is available.
            </summary>
            <param name="sessionId">Existing session ID.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Connection"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Connection.MD5Encode(System.String)">
            <summary>
            Encodes a string using the MD5 algorithm.
            </summary>
            <param name="password">Password.</param>
            <returns>The encoded password</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.LogOnForm">
            <summary>
            Sends an initial login request to the engine. If the engine automatically logs the user in (due to SSO for instance) 
            then this method will log the user in and return null. If eUser authentication is being used, 
            Connection.LogOn can be used instead.
            <br/><br/>
            When SSO is to be used from an ASP.NET application, ensure Windows Authentication is the only authentication mechanism enabled for the application 
            and ensure impersonation is enabled, either for the whole application using &lt;identity impersonate= "true"/&gt; in web.config or via code in the application.  
            </summary>
            <returns>The form to be rendered, or null if the user has been automatically logged in.</returns>
            <example>
            This example illustrates logging into the engine.
            <code language="c#">
            Connection conn = new FreeFlow.Client.Connection();
            conn.HttpServer = "my server";
            conn.Engine = "my server";
            Form form = conn.LogOnForm();
            
            // fields to be set depends on the SAP being used.
            form.Field("username").Value = "user name";
            form.Field("password").Value = Connection.MD5Encode("password");
            
            conn.LogOn(form); 
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.Connection.LogOn(System.String,System.String)">
            <summary>
            Logs in the specified user to the engine. This attempts to use eUser authentication.
            </summary>
            <param name="userName">Name of the user.</param>
            <param name="password">Password.</param>
            <example>
            This example illustrates logging into the engine.
            <code language="c#">
            Connection conn = new FreeFlow.Client.Connection();
            conn.HttpServer = "my server";
            conn.Engine = "my server";
            conn.LogOn("user name", "password");
            </code>
            <code language="vb">
            Dim conn As New FreeFlow.Client.Connection
            conn.HttpServer = "my server"
            conn.Engine = "my server"
            conn.LogOn("user name", "password")
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.Connection.LogOn(FreeFlow.Client.Form)">
            <summary>
            Sends a login request to the engine for an associated login form.
            </summary>
            <param name="form">The filled form used to attempt the login</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.Logout">
            <summary>
            Logs out the user from the engine.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Connection.SendDecoratedMsg(System.String)">
            <summary>
            Adds session ID and locale info to a request before sending it to the engine.
            </summary>
            <param name="msg">The engine request.</param>
            <returns>The engine response.</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.SendDecoratedMsg(System.Xml.XmlDocument)">
            <summary>
            Adds session ID and locale info to a request before sending it to the engine.
            </summary>
            <param name="msg">The engine request in an XML document.</param>
            <returns>The engine response.</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.SendMsg(System.String)">
            <summary>
            Sends a request to the engine.
            </summary>
            <param name="msg">The engine request.</param>
            <returns>The engine response.</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.Object[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <remarks>When no user name is specified, public access must be enabled.</remarks>
            <param name="flag">Flag name.</param>
            <param name="flagData">Flag data.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String,System.String,System.String,System.Object[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="userName">Name of the user.</param>
            <param name="password">Password.</param>
            <param name="flag">Flag name.</param>
            <param name="folderId">The ID of the folder on whose behalf the flag will be raised.</param>
            <param name="flagData">Flag data.</param>
            <example>
            This example illustrates raising a flag against the engine.
            <code>
            [C#]
            Connection conn = new Connection();
            conn.HttpServer = "my server";
            conn.Engine = "my server";
            conn.RaiseFlag("user name", "password", "my flag", "folder id", new object[] {1, "flag data 2"});
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String,System.String,System.String,System.String[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="userName">Name of the user.</param>
            <param name="password">Password.</param>
            <param name="flag">Flag name.</param>
            <param name="folderId">The ID of the folder on whose behalf the flag will be raised.</param>
            <param name="flagData">Flag data.</param>
            <example>
            This example illustrates raising a flag against the engine.
            <code>
            [C#]
            Connection conn = new Connection();
            conn.HttpServer = "my server";
            conn.Engine = "my server";
            conn.RaiseFlag("user name", "password", "my flag", "folder id", new string[] {"flag data 1", "flag data 2"});
            </code>
            </example>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <remarks>When no user name is specified, public access must be enabled.</remarks>
            <param name="flag">Flag name.</param>
            <param name="flagData">Flag data.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String)">
            <summary>
            Raises a flag against the engine.
            </summary>
            <remarks>When no user name is specified, public access must be enabled.</remarks>
            <param name="flag">Flag name.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String,System.String)">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="userName">Name of the user.</param>
            <param name="password">Password.</param>
            <param name="flag">Flag.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String,System.String,System.String[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="userName">Name of the user.</param>
            <param name="password">Password.</param>
            <param name="flag">Flag name.</param>
            <param name="flagData">Flag data.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String)">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="folderId">The ID of the folder on whose behalf the flag will be raised.</param>
            <param name="flag">Flag name.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.RaiseFlag(System.String,System.String,System.String[])">
            <summary>
            Raises a flag against the engine.
            </summary>
            <param name="folderId">The ID of the folder on whose behalf the flag will be raised.</param>
            <param name="flag">The flag name.</param>
            <param name="flagData">The flag data.</param>
        </member>
        <member name="M:FreeFlow.Client.Connection.GetAttachment(FreeFlow.AttachmentType,System.String,System.String)">
            <summary>
            Gets an attachment from the engine. Also see <see cref="T:FreeFlow.Client.AttachmentField"/>
            </summary>
            <param name="type">The type of the attachment.</param>
            <param name="file">The name of the file.</param>
            <param name="owner">The owner of the attachment (folder ID for folder attachments, map name for map attachments, procedure name for procedure attachments).</param>
            <returns>A byte array containing the attachment data.</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.SetAttachment(System.String,System.String,System.Byte[])">
            <summary>
            Sends an attachment to the engine and stores it in the eAttachment table for the specified folder.
            Also see <see cref="T:FreeFlow.Client.AttachmentField"/>
            </summary>
            <param name="file">File name to be used for this attachment.</param>
            <param name="folderId">Folder ID.</param>
            <param name="data">Attachment data.</param>
            <returns>The name of the attached file (may not be the same as the passed in filename)</returns>
        </member>
        <member name="M:FreeFlow.Client.Connection.SaveAttachmentToFile(FreeFlow.AttachmentType,System.String,System.String,System.String)">
            <summary>
            Saves the specified attachment to a file on disk.
            </summary>
            <param name="type">The type of attachment.</param>
            <param name="file">The attachment filename.</param>
            <param name="owner">The owner of the attachment.</param>
            <param name="fileName">Name of the file to save to.</param>
        </member>
        <member name="P:FreeFlow.Client.Connection.SessionId">
            <summary>
            Gets the user's session ID.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.UserName">
            <summary>
            Gets the user's login name, if the user has logged-in via the login methods.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.HttpServer">
            <summary>
            Gets or sets the HTTP server to connect to. Use the EScriptUrl property if more control
            over the URL is required.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.EscriptsUrl">
            <summary>
            Gets or sets the URL used to access the escript virtual directory. 
            e.g. http://webserver/escripts 
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.Engine">
            <summary>
            Gets or sets the name of the machine where the engine is running.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.SAP">
            <summary>
            Gets or sets the SAP that will be used when logging in.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.ClientType">
            <summary>
            Gets or sets the ClientType string that is passed to the engine with a login request.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.ConnectionType">
            <summary>
            Gets or sets the type of connection that will be used to connect to the engine.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Connection.LoggedIn">
            <summary>
            Gets a value indicating whether the connection is logged in.
            </summary>
            <value>
            	<c>true</c> if logged in; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:FreeFlow.Client.Connection.RaiseFlagBy">
            <summary>Defines how flags will be raised against the engine. 
            By default, flags will be raised via the engine's XML interface. 
            If you want to raise flags from an ASP.NET page using the ActiveX control, 
            the account under which ASP.NET is running must hold the 'Flag Raiser' COM+ role.</summary>
        </member>
        <member name="T:FreeFlow.Client.FormType">
            <summary>The type of forms to list</summary>
        </member>
        <member name="F:FreeFlow.Client.FormType.Blank">
            <summary>Blank forms</summary>
        </member>
        <member name="F:FreeFlow.Client.FormType.Admin">
            <summary>Admin forms</summary>
        </member>
        <member name="T:FreeFlow.Client.BlankFormsList">
            <summary>A list containing blank forms</summary>
            <example>
            This shows how to populate an ASP.NET DataGrid from an BlankFormsList object. 
            Connection is an already connected <see cref="T:FreeFlow.Client.Connection"/> object.
            Populating a WinForms DataGrid is very similar but without a call to DataBind. 
            <code language="c#">
            BlankFormsList list = new BlankFormsList();
            list.Connection = Connection;
            list.BlankFormType = FormType.Blank;
            list.RefreshItems();
            dataGrid.DataSource = list.ListDataTable;
            dataGrid.DataBind();
            </code>
            </example>
        </member>
        <member name="F:FreeFlow.Client.BlankFormsList.GroupColumn">
            <summary>The column that contains the group name for the blank form.</summary>
        </member>
        <member name="F:FreeFlow.Client.BlankFormsList.ProcedureColumn">
            <summary>The column that contains the procedure name for the blank form.</summary>
        </member>
        <member name="F:FreeFlow.Client.BlankFormsList.ProcessColumn">
            <summary>The column that contains the process name for the blank form.</summary>
        </member>
        <member name="F:FreeFlow.Client.BlankFormsList.ActionColumn">
            <summary>The column that contains the action name for the blank form.</summary>
        </member>
        <member name="F:FreeFlow.Client.BlankFormsList.DescriptionColumn">
            <summary>The column that contains the description for the blank form.</summary>
        </member>
        <member name="M:FreeFlow.Client.BlankFormsList.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.BlankFormsList"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.BlankFormsList.ListType">
            <summary>
            Returns the type of list to be passed to the engine
            </summary>
        </member>
        <member name="M:FreeFlow.Client.BlankFormsList.RequestData">
            <summary>
            Returns the where clause for the engine request for this blank forms list
            </summary>
        </member>
        <member name="P:FreeFlow.Client.BlankFormsList.BlankFormType">
            <summary>
            Gets or sets the blank form type.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.MemoField">
            <summary>
            A memo field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Events.ActionButtonClickEventArgs">
            <summary>Arguments passed to the ActionButtonClickEventHandler event handler</summary>
        </member>
        <member name="M:FreeFlow.Client.Events.ActionButtonClickEventArgs.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Events.ActionButtonClickEventArgs"/> instance.
            </summary>
            <param name="actionName">Name of the action whose button was pressed.</param>
        </member>
        <member name="P:FreeFlow.Client.Events.ActionButtonClickEventArgs.ActionName">
            <summary>
            Gets the name of the action whose button was pressed.
            </summary>
        </member>
        <member name="T:FreeFlow.FreeFlowException">
            <summary>
            Exception class thrown by FreeFlow.
            </summary>
        </member>
        <member name="M:FreeFlow.FreeFlowException.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.FreeFlowException"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.FreeFlowException.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.FreeFlowException"/> instance.
            </summary>
            <param name="message">The exception message.</param>
        </member>
        <member name="M:FreeFlow.FreeFlowException.#ctor(System.String,System.Exception)">
            <summary>
            Creates a new <see cref="T:FreeFlow.FreeFlowException"/> instance.
            </summary>
            <param name="message">The exception message.</param>
            <param name="innerException">Inner exception.</param>
        </member>
        <member name="M:FreeFlow.FreeFlowException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Creates a new <see cref="T:FreeFlow.FreeFlowException"/> instance.
            </summary>
            <param name="info">Info.</param>
            <param name="context">Context.</param>
        </member>
        <member name="T:FreeFlow.EnumDescriptionAttribute">
            <summary>
            Attribute used to give textual descriptions to enums.
            </summary>
        </member>
        <member name="M:FreeFlow.EnumDescriptionAttribute.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.EnumDescriptionAttribute"/> instance.
            </summary>
            <param name="text">Text.</param>
        </member>
        <member name="P:FreeFlow.EnumDescriptionAttribute.Text">
            <summary>
            Gets the text description.
            </summary>
        </member>
        <member name="T:FreeFlow.EnumDescription">
            <summary>
            Helper class to get descriptions of enums.
            </summary>
        </member>
        <member name="M:FreeFlow.EnumDescription.GetDescription(System.Enum)">
            <summary>
            Gets the description of the specified enum. If there is no description attribute, returns the 
            enum as a string
            </summary>
            <param name="e">The enum to get the description of.</param>
        </member>
        <member name="M:FreeFlow.EnumDescription.GetEnum(System.Type,System.String)">
            <summary>
            Gets an enum from its description.
            </summary>
            <param name="enumType">Enum type.</param>
            <param name="description">Enum description.</param>
        </member>
        <member name="T:FreeFlow.Client.NumberField">
            <summary>
            A number field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.NumberField.GetValidationMessage">
            <summary>
            Gets the validation message.
            </summary>
            <returns>Returns null if the field has no validation errors, an error message otherwise.</returns>
        </member>
        <member name="P:FreeFlow.Client.NumberField.DecimalPlaces">
            <summary>
            Gets the number of decimal places to be displayed for the number field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.NumberField.Minimum">
            <summary>
            Gets the minimum allowed value for this field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.NumberField.Maximum">
            <summary>
            Gets the maximum allowed value for this field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.LabelField">
            <summary>
            A Label field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.Hint">
            <summary>
            Gets the hint for the label (for a label showing a URL, the hint will be the URL)
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.LinkField">
            <summary>
            Gets the name of the field that this label is linked to.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.Font">
            <summary>
            Gets the font of the label.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.FontColor">
            <summary>
            Gets the color of the font of the label.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.Caption">
            <summary>
            Gets the caption of the label.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.Align">
            <summary>
            Gets the alignment of the label.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.LabelField.Url">
            <summary>
            Gets the URL if the label will display a hyperlink.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.GridType">
            <summary>
            The type of a grid.
            </summary>
        </member>
        <member name="F:FreeFlow.Client.GridType.Refill">
            <summary>Double-clicking a row causes a refill.</summary>
        </member>
        <member name="F:FreeFlow.Client.GridType.Edit">
            <summary>The grid is editable.</summary>
        </member>
        <member name="F:FreeFlow.Client.GridType.Folder">
            <summary>Double-clicking a row opens another folder.</summary>
        </member>
        <member name="F:FreeFlow.Client.GridType.Attachment">
            <summary>The grid displays attachments.</summary>
        </member>
        <member name="F:FreeFlow.Client.GridType.None">
            <summary>None of these.</summary>
        </member>
        <member name="T:FreeFlow.Client.GridField">
            <summary>
            A grid field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.GridField.Column(System.Int32)">
            <summary>
            Gets the column at the specified index.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="P:FreeFlow.Client.GridField.ColumnCount">
            <summary>
            Gets the column count for the grid.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.GridField.Data">
            <summary>
            Gets the data for this grid.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.GridField.GridType">
            <summary>
            Gets the grid type.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.DropDownField">
            <summary>
            A dropdown field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.DropDownField.Option(System.Int32)">
            <summary>
            Gets the option at the specified index.
            </summary>
            <param name="index">Index.</param>
            <returns></returns>
        </member>
        <member name="P:FreeFlow.Client.DropDownField.OptionCount">
            <summary>
            Gets the number of options in the dropdown.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ClientScriptEvents">
            <summary>
            A collection of client script events.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ClientScriptEvents.#ctor(System.Xml.XmlElement)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.ClientScriptEvents"/> instance.
            </summary>
            <param name="eventListNode">The XML element contains the client script event list.</param>
        </member>
        <member name="P:FreeFlow.Client.ClientScriptEvents.Count">
            <summary>
            Gets the number of client scripts.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ClientScriptEvents.Item(System.Int32)">
            <summary>
            Gets the <see cref="T:FreeFlow.Client.ClientScriptEvent"/> at the specified index.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ClientScriptLanguage">
            <summary>The language used for client scripts.</summary>
        </member>
        <member name="F:FreeFlow.Client.ClientScriptLanguage.JScript">
            <summary>JScript language</summary>
        </member>
        <member name="F:FreeFlow.Client.ClientScriptLanguage.VBScript">
            <summary>VBScript language</summary>
        </member>
        <member name="T:FreeFlow.Client.ClientScript">
            <summary>
            A client-side script.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ClientScript.#ctor(System.Xml.XmlElement,FreeFlow.IGetAttachment)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.ClientScript"/> instance.
            </summary>
            <param name="scriptNode">Script XML node.</param>
            <param name="getAttachment">The IGetAttachment implementation used to get attachments.</param>
        </member>
        <member name="M:FreeFlow.Client.ClientScript.ParseLanguage(System.String)">
            <summary>
            Parses the language attribute of a script element.
            </summary>
            <param name="language">Language.</param>
        </member>
        <member name="P:FreeFlow.Client.ClientScript.Name">
            <summary>
            Gets the name of the client script.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ClientScript.Language">
            <summary>
            Gets the language of the client script call.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ClientScript.Script">
            <summary>
            Gets the client script.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.AttachmentField">
             <summary>
             An attachment field.
             </summary>
             <example>
             The following example shows how to attach a file to an attachment field on a form. 
             This assumes the use of a HtmlInputFile ASP.NET control, but you could use 
             any Stream-based data. The example assumes there is a map called 'Map1' with a creation 
             action called 'First action' that uses a form with an attachment field called 'attach'.
             <code language="c#">
             Connection conn = new Connection(); 
             ActionPage page = new ActionPage(); 
             conn.Login("username", "password"); 
             page.Connection = conn; 
             page.StartBlankForm("Map1", "First action"); 
             AttachmentField clip = page.Form.Field("attach") as AttachmentField; 
            
             // uploadedFile is a HtmlInputFile control 
             byte[] data = new byte[uploadedFile.PostedFile.InputStream.Length]; 
             uploadedFile.PostedFile.InputStream.Read(data, 0, (int) uploadedFile.PostedFile.InputStream.Length); 
            
             // get just the filename 
             string fileName = uploadedFile.PostedFile.FileName; 
             int indexOfSlash = fileName.LastIndexOf("\\"); 
             clip.Value = fileName.Substring(indexOfSlash+1, fileName.Length-indexOfSlash-1); 
             
             clip.Attachment = data; 
            
             page.Submit(); 
             </code>
             </example>
        </member>
        <member name="M:FreeFlow.Client.AttachmentField.SaveToFile(System.String)">
            <summary>
            Saves the attachment to a file.
            </summary>
            <param name="fileName">Name of the file to save to.</param>
        </member>
        <member name="P:FreeFlow.Client.AttachmentField.Caption">
            <summary>
            Gets the caption displayed in the attachment.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.AttachmentField.Attachment">
            <summary>
            Gets or sets the attachment data.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.TextField">
            <summary>
            A text field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.TextField.GetValidationMessage">
            <summary>
            Gets the validation message.
            </summary>
            <returns>Returns null if the field has no validation errors, an error message otherwise.</returns>
        </member>
        <member name="P:FreeFlow.Client.TextField.Value">
            <summary>
            Gets or sets the value of the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.TextField.Align">
            <summary>
            Gets the alignment of the text field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.TextField.MaxLength">
            <summary>
            Gets the maximum length allowed in the text field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.TextField.Password">
            <summary>
            Gets a value indicating whether this <see cref="T:FreeFlow.Client.TextField"/> is a password field.
            </summary>
            <value>
            	<c>true</c> if a password field; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:FreeFlow.Client.TextField.Mask">
            <summary>
            Gets the regular expression mask for the <see cref="T:FreeFlow.Client.TextField"/>.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ListField">
            <summary>
            A list field.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.ListField.Option(System.Int32)">
            <summary>
            Gets the option at the specified index.
            </summary>
            <param name="index">Index.</param>
            <returns></returns>
        </member>
        <member name="M:FreeFlow.Client.ListField.Selected(System.Int32)">
            <summary>
            Gets the slected item at the specified index.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="P:FreeFlow.Client.ListField.OptionCount">
            <summary>
            Gets the number of options in the list.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ListField.SelectedCount">
            <summary>
            Gets the number of selected items.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ListField.Value">
            <summary>
            Gets or sets the value of the field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Events.OpenBlankFormEventArgs">
            <summary>
            Event arguments for the open blank form event.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Events.OpenBlankFormEventArgs.#ctor(System.String,System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Events.OpenBlankFormEventArgs"/> instance.
            </summary>
            <param name="processName">The process name.</param>
            <param name="actionName">The action name.</param>
        </member>
        <member name="P:FreeFlow.Client.Events.OpenBlankFormEventArgs.ProcessName">
            <summary>
            Gets the name of the process.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Events.OpenBlankFormEventArgs.ActionName">
            <summary>
            Gets the name of the action.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.Events.RefillFormEventArgs">
            <summary>
            Event arguments for the form refill event.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Events.RefillFormEventArgs.#ctor(System.String)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Events.RefillFormEventArgs"/> instance.
            </summary>
            <param name="updatedField">The field that caused the refill.</param>
        </member>
        <member name="P:FreeFlow.Client.Events.RefillFormEventArgs.UpdatedField">
            <summary>
            Gets the field that caused the refill.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.StatusField">
            <summary>
            A status field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.Process">
            <summary>
            Gets the process that should be started when the user clicks the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.Action">
            <summary>
            Gets the process action that should be started when the user clicks the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.Url">
            <summary>
            Gets the URL that should be opened when the user clicks the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.Percentage">
            <summary>
            Gets a value indicating whether the safety and danger thresholds for this <see cref="T:FreeFlow.Client.StatusField"/> are a percentage.
            </summary>
            <value>
            	<c>true</c> if the thresholds are percentages; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:FreeFlow.Client.StatusField.HundredPercent">
            <summary>
            Gets the value representing 100 percent.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.SafeThreshold">
            <summary>
            Gets the safe threshold for the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.DangerThreshold">
            <summary>
            Gets the danger threshold for the field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.StatusField.Image">
            <summary>
            Gets the image that should be currently displayed, based on the current safety threshold and 
            danger threshold and value of the field.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.GridColumn">
            <summary>
            A column in a grid.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.GridColumn.Caption">
            <summary>
            Gets the caption of the column.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.GridColumn.Width">
            <summary>
            Gets the width of the column.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.GridColumn.Usage">
            <summary>
            Gets the usage of the column.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.FolderPage">
            <summary>
            View onto a read-only folder at a stage
            </summary>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.#ctor">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.FolderPage"/> instance.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.FormName(System.Int32)">
            <summary>
            Returns the name of the form at the specified index.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.Form(System.Int32)">
            <summary>
            Returns the Forms at the specified index. If the form hasn't been retrieved will require
            a call to the engine.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.Form(System.String)">
            <summary>
            Returns the Forms with the specified name. If the form hasn't been retrieved will require
            a call to the engine.
            </summary>
            <param name="formName">Name of the form.</param>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.Action(System.Int32)">
            <summary>
            Returns the action at the specified index.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="M:FreeFlow.Client.FolderPage.Action(System.String)">
            <summary>
            Returns the action with the specified name.
            </summary>
            <param name="name">Name.</param>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.FolderId">
            <summary>
            Gets or sets the folder id.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.FolderName">
            <summary>
            Gets the name of the folder.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.MapName">
            <summary>
            Gets the name of the map that this folder is an instance of.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.StageName">
            <summary>
            Gets the name of the stage that the folder is currently at.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.FormCount">
            <summary>
            Gets the number of forms in the folder.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.FolderPage.ActionCount">
            <summary>
            Gets the number of actions available for this folder.
            </summary>
        </member>
        <member name="T:FreeFlow.FieldUsage">
            <summary>Usage of a field in a form during an action.</summary>
        </member>
        <member name="F:FreeFlow.FieldUsage.ReadOnly">
            <summary>Read-only field.</summary>
        </member>
        <member name="F:FreeFlow.FieldUsage.Hidden">
            <summary>Hidden field.</summary>
        </member>
        <member name="F:FreeFlow.FieldUsage.Optional">
            <summary>Optional field.</summary>
        </member>
        <member name="F:FreeFlow.FieldUsage.Required">
            <summary>Required field.</summary>
        </member>
        <member name="T:FreeFlow.Client.Form">
            <summary>
            A form
            </summary>
        </member>
        <member name="F:FreeFlow.Client.Form.FormLayoutElement">
            <summary>The name of the XML element containing form layout information.</summary>
        </member>
        <member name="M:FreeFlow.Client.Form.#ctor(System.Xml.XmlElement,FreeFlow.IGetAttachment)">
            <summary>
            Creates a new <see cref="T:FreeFlow.Client.Form"/> instance.
            </summary>
            <param name="formLayoutNode">The FormLayout XML node used to populate the form.</param>
            <param name="getAttachment">The IGetAttachment implementation used to get attachments.</param>
        </member>
        <member name="M:FreeFlow.Client.Form.FillValues(System.Xml.XmlElement)">
            <summary>
            Fills the form from a field output list.
            </summary>
            <param name="fieldOutputList">Field output list.</param>
        </member>
        <member name="M:FreeFlow.Client.Form.FillUsage(System.Xml.XmlElement)">
            <summary>
            Fills the form fields from a field usage list.
            </summary>
            <param name="fieldUsageList">Field usage list.</param>
        </member>
        <member name="M:FreeFlow.Client.Form.Validate">
            <summary>
            Ensures all fields hasve valid values.
            </summary>
        </member>
        <member name="M:FreeFlow.Client.Form.AddFieldInputList(System.Xml.XmlElement)">
            <summary>
            Adds a field input list to an XML document.
            </summary>
            <param name="node">XML node.</param>
        </member>
        <member name="M:FreeFlow.Client.Form.Field(System.Int32)">
            <summary>
            Returns the field at the specified index.
            </summary>
            <param name="index">Index.</param>
            <returns></returns>
        </member>
        <member name="M:FreeFlow.Client.Form.Field(System.String)">
            <summary>
            Returns the field with the specified name.
            </summary>
            <param name="fieldName">Name of the field.</param>
        </member>
        <member name="M:FreeFlow.Client.Form.Script(System.Int32)">
            <summary>
            Gets the client script at the specified index.
            </summary>
            <param name="index">Index.</param>
        </member>
        <member name="P:FreeFlow.Client.Form.Connection">
            <summary>
            Gets or sets the connection.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Name">
            <summary>
            Gets the name of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Font">
            <summary>
            Gets the font for this form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.FontColor">
            <summary>
            Gets the color of the form font.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Color">
            <summary>
            Gets the color of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Height">
            <summary>
            Gets the height of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Width">
            <summary>
            Gets the width of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Size">
            <summary>
            Gets the size of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Version">
            <summary>
            Gets the version of the form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Procedure">
            <summary>
            Gets the procedure that this form is part of.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.Page">
            <summary>
            Gets or sets the page of which this form is part.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.FieldCount">
            <summary>
            Gets the number of fields in this form.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.Form.ScriptCount">
            <summary>
            Gets the number of client scripts for this form.
            </summary>
        </member>
        <member name="T:FreeFlow.Client.ButtonOperation">
            <summary>Operation that occurs when the button is pressed</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.Submit">
            <summary>The button submits the current action.</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.Cancel">
            <summary>The button cancels the current action.</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.Client">
            <summary>The button performs a client operation.</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.Server">
            <summary>The button performs a server operation.</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.Folder">
            <summary>The button opens a folder.</summary>
        </member>
        <member name="F:FreeFlow.Client.ButtonOperation.BlankForm">
            <summary>The button starts a blank form</summary>
        </member>
        <member name="T:FreeFlow.Client.ButtonField">
            <summary>
            A button field.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ButtonField.Caption">
            <summary>
            Gets the caption of the button.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ButtonField.Operation">
            <summary>
            Gets the operation that occurs when the button is pressed.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ButtonField.BlankFormProcess">
            <summary>
            For a button whose Operation is BlankForm, gets the blank form process name.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ButtonField.BlankFormAction">
            <summary>
            For a button whose Operation is BlankForm, gets the blank form action name.
            </summary>
        </member>
        <member name="P:FreeFlow.Client.ButtonField.OpenFolderId">
            <summary>
            For a button whose Operation is Folder, gets the folder id to open.
            </summary>
        </member>
        <member name="T:FreeFlow.AlertType">
            <summary>The type of alerts provided by the engine</summary>
        </member>
        <member name="F:FreeFlow.AlertType.ToDo">
            <summary>To Do alert</summary>
        </member>
        <member name="F:FreeFlow.AlertType.Watch">
            <summary>Watch alert</summary>
        </member>
        <member name="F:FreeFlow.AlertType.Deletion">
            <summary>Deletion alert (indicates an alert has been removed from the user's To Do or Watch list)</summary>
        </member>
    </members>
</doc>
